package event

type EventProcessor interface {
	// whether is a middle ware, not implemented for a certain type
	IsMiddleware() bool
	// the specific event type to process, if IsMiddleware() is true, the Type() is useless
	Type() int
	// the processor may generate child events
	ChildrenEventTypes() []int
	// processor name
	Name() string
	// process function
	Process(*Event)
}
